今天進度 :
筆記 :
欄列變數 :
| 變數名稱 | 代表意義 | 
|---|---|
| NF | 每一行 ($0) 擁有的欄位總數 | 
| NR | 目前 awk 所處理的是『第幾行』資料 | 
| FS | 目前的分隔字元,預設是空白鍵 | 
test@test:~$ last -n 5| awk '{print $1 "\t 第幾行: " NR "\t 第幾欄: " NF}'
test	 第幾行: 1	 第幾欄: 10
test	 第幾行: 2	 第幾欄: 10
test	 第幾行: 3	 第幾欄: 10
test	 第幾行: 4	 第幾欄: 10
test	 第幾行: 5	 第幾欄: 10
test	 第幾行: 6	 第幾欄: 0
wtmp	 第幾行: 7	 第幾欄: 7
實現加總欄位
test@test:~$ vi demo2.txt
Name    1st     2nd     3th
A	10		20		20
B	10		20		20
C	10		20		20
test@test:~$ cat demo2.txt | \
> awk 'NR==1{printf "%10s %10s %10s %10s %10s\n",$1,$2,$3,$4,"Total" }
> NR>=2{total = $2 + $3 + $4
> printf "%10s %10d %10d %10d %10.2f\n", $1, $2, $3, $4, total}'
      name        1st        2nd        3th      Total
         A         10         20         20      50.00
         B         10         20         20      50.00
         C         10         20         20      50.00
awk 小總結筆記 :
補充 :
另外分享今天看到有人居然用 awk 實現一個簡單資料庫 用 awk 实现一个关系型数据库 - Fantasy
太厲害了 OoO +